Агрегатные функции

Функция

Определяет значение, получаемое применением функции к набору данных.

Спецификация

     
< агрегатная функция >::=
COUNT (*) | функция
< тип функции >::=
{AVG| MEDIAN| MAX| MIN| SUM| COUNT| VARIANCE| STDDEV| DEFAULT| EVERY| ANY| SOME}
< классификатор >::=
DISTINCT | ALL

Синтаксические правила

  1. Агрегатные функции применяются к таблице (представлению) или группе в сгруппированной таблице (представлении).

  2. < Значимое выражение > в < функции > может быть именем столбца или выражением.

  3. < Значимое выражение > в < функции > не должно содержать подзапрос или другую < функцию >.

  4. Если < классификатор > пропущен, по умолчанию принимается ALL.

    create or replace table tab1 (i int, j real);
    insert into tab1 values (1, 1.3);
    insert into tab1 values (3, 2.55);
    insert into tab1 values (5, 5.45);
    insert into tab1 values (3, 2.55);
    insert into tab1 values (NULL, NULL);
    
    Эти запросы эквивалентны:
    select avg(all i), round(avg(all j), 2) from tab1;
    select avg(i), round(avg(j), 2) from tab1;
    
    |3.0         |2.96         |
  5. Операция DISTINCT запрещена для столбца типа BLOB.